package day03;

/**
 * @author wangzhisen
 * @Desc TODO
 * @date 2025/4/10
 */

/*求50000以内的完备数
提示：完备数--->它的约数(除了它本身)之和等于自己；
如：6的约数有1，2，3，1+2+3 = 6；*/

public class Test3 {
    public static void main(String[] args) {
        System.out.println("50000以内的完备数有：");
        for(int num=2; num<=50000; num++){
            int sum=1;
            for(int i=2; i*i<=num; i++){
                if(num%i==0){
                    sum+=i;
                    if(i!=num/i){
                        sum+=num/i;
                    }
                }
            }
            if(sum==num){
                System.out.println(num);
            }
        }
    }
}
